package com.woniu.product.infra.es.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * <p>
 * 标准产品单元
 * </p>
 *
 * @author Lucas
 * @since 2022-11-26
 */
@Data
@Document(indexName = "lxlgspu")
public class SpuEsModel{
    /**
     * spu_id
     */
    @Id
    @Field(type = FieldType.Integer,name="spuId")
    private Integer spuId;

    /**
     * 商品名
     */
    @Field(type = FieldType.Text,name="spuName")
    private String spuName;

    /**
     * 分类ID
     */
    @Field(type = FieldType.Integer,name="categoryId")
    private Integer categoryId;


    /**
     * 分类名
     */
    @Field(type = FieldType.Text,name="categoryName")
    private String categoryName;

    /**
     * 商品介绍
     */
    @Field(type = FieldType.Text,name="introduction")
    private String introduction;

    /**
     * 头图
     */
    @Field(type = FieldType.Keyword,name="spuMainPic")
    private String spuMainPic;

    /**
     * 销售统计
     */
    @Field(type = FieldType.Integer,name="salesCount")
    private Integer salesCount;

    /**
     * 最低价格
     */
    @Field(type = FieldType.Double,name="minPrice")
    private BigDecimal minPrice;

    /**
     * 最高价格
     */
    @Field(type = FieldType.Double,name="maxPrice")
    private BigDecimal maxPrice;


//    /**
//     * 商品状态ON_SALE | OFF_SALE | DELETE 删除
//     */
//    @Field(type = FieldType.Text,name="spuStatus")
//    private String spuStatus;
    /**
     * 商品类别 正常 NORMAL | 众筹 CROWD | 甄选 SELECT
     */
    @Field(type = FieldType.Text,name="spuType")
    private String spuType;

}
